package avicit.bdp.dgs.metadata.dao;

import avicit.bdp.common.base.BaseDAO;
import avicit.bdp.common.service.dto.BdpColumnDTO;
import avicit.bdp.dgs.metadata.vo.MetadataTableColumnVo;
import com.github.pagehelper.Page;
import java.util.List;
import org.apache.ibatis.annotations.Param;

/**
 * @author mayanj 数据表类型元数据列数据
 */
public interface MetadataTableColumnDao extends BaseDAO<BdpColumnDTO> {

  Page<BdpColumnDTO> selectPageList(
      @Param("tableId") String tableId, @Param("keyWords") String keyWords);

  List<MetadataTableColumnVo> selectList(
      @Param("tableId") String tableId,
      @Param("standardId") String standardId,
      @Param("keyWords") String keyWords);

  /**
   * 批量添加
   *
   * @param columnList 列集合
   */
  void batchInsert(@Param("list") List<BdpColumnDTO> columnList);

  int deleteByDatasourceId(@Param("dataSourceId") String dataSourceId);
}
